import turtle
import math
t = turtle.Pen()
#标记坐标的函数
def my_zb(x,y):
    #标出坐标x,y的坐标并用点标出
    t.pu()
    t.goto(x,y)
    t.pd()
    st = "(" + str(round(x,2)) + "," + str(round(y,2)) + ")"
    t.write(st)
    t.fillcolor("blue")
    t.begin_fill()
    t.circle(2)
    t.end_fill()
    #代替方法
    #t.dot(4, "blue")
#移动坐标，不带划线

def t_zb(x = 0):
    '''
    标出当前位置坐标
    '''
    if x == 1:
        t.write('({0},{1})'.format(round(t.xcor(),2),round(t.ycor(),2)))
        t.dot(3,'crimson')
    else:
        return (round(t.xcor(),2),round(t.ycor(),2))

def my_circle(x,color):
    #画圆并填充颜色
    t.fillcolor(color)
    t.begin_fill()
    t.circle(x)
    t.end_fill()
    
def my_go(x,y):
    t.pu()
    t.goto(x,y)
    t.pd()
    
def t_hfx(x,y):
    #画一个方形，x,y 为边长
    t.forward(x)
    t.left(90)
    t.forward(y)
    t.left(90)
    t.forward(x)
    t.left(90)
    t.forward(y)
    t.left(90)
def t_dbx(x,y):
    #画一个多边形，x为每一边长度，y为边数
    if y >= 3:
        for z in range(y):
            #my_zb(t.xcor(),t.ycor())
            t.fd(x)
            t.lt(360/y)
            
    
def my_fd(x):
    #抬笔前进x
    t.pu()
    t.fd(x)
    t.pd()

def t_zdjx(r,n):
    '''
    正多角星，r为半径，n为角数
    '''
    bc = 2 * r * math.sin(180/n)
    

def t_djx(x,y):
    '''
    多角星，x为边长，y为角数
    '''
    zb =[]
    if y >= 5:
        ro = 360/y
        if y == 5:
            t.lt((90-ro)*2)
        if y == 6:
            t.lt((90-ro))
        for z in range(y):
            t.rt(ro)
            t.fd(x)
            zb.append(t_zb())
            t.lt(2*ro)
            t.fd(x)
            zb.append(t_zb())
        print("坐标：",zb)

def t_djx1(x,y,r):
    '''
    带填充颜色的多角星
    '''
    t.pencolor(r)
    t.fillcolor(r)
    t.begin_fill()
    t_djx(x,y)
    t.end_fill()

def show_heading():
    for a in range(0,360,10):
        t.setheading(a)
        t.fd(150)
        t.write(t.heading())
        t.bk(150)
    
def t_gq():
    '''
    画国旗步骤
    '''
    #先画四个方形，总体长宽比3:2
    t_hfx(300,200)
    t.left(90)
    t_hfx(200,300)
    t.left(90)
    t_hfx(300,200)
    t.left(90)
    t_hfx(200,300)
    